public class array_add {
    //数组扩容
    public static void main(String[] args){
        /*
        要求：实现动态的给数组添加元素效果，实现数组的扩容。
        1.原始数组使用静态分配 int[] arr = {1,2,3};
        2.增加的元素4，直接放在数组的最后 arr = {1，2，3，4}
        3.用户通过如下方法决定是否继续添加，添加成功，是否继续？y/n

        思路分析
        1.定义初始数组 int[] arr = {1,2,3}
        2.定义一个新数组 int arrNew = new int[arr.length+1]
        3.遍历 arr 数值，依次将arr的元素拷贝到 arrNew数组
        4.将 4 赋值给arrNew[arrNew.length-1] = 4;
        5.最终得体现对 arr 的扩容==>让 arr 指向 arrNew ==> arr = arrNew  ==>那么原来的数组arrNew就被销毁了
         */

        //代码实现
        int[] arr = {1,2,3};
        int[] arrNew = new int[arr.length+1];
        for(int i=0;i<arr.length;i++){
            arrNew[i] = arr[i];
        }
        arrNew[arrNew.length-1] = 4;
        arr = arrNew;

        //输出测试
        System.out.println("====arr扩容后元素====");
        for(int i=0;i<arrNew.length;i++){
            System.out.println(arrNew[i]);      //1 2 3 4
        }
    }
}
